# If you add/update a setting that affects `meltano.yml`, update `meltano.schema.json` too!

settings:
# Project
- name: default_environment
  value: null
- name: send_anonymous_usage_stats
  kind: boolean
  value: true
  # Previously:
  # env_aliases: ["!MELTANO_DISABLE_TRACKING"]
- name: disable_tracking
  kind: boolean
  # Replaces negated env_alias from `send_anonymous_usage_stats`
- name: project_id
- name: database_uri
  value: sqlite:///$MELTANO_SYS_DIR_ROOT/meltano.db
  env_specific: true
- name: database_max_retries
  kind: integer
  value: 3
- name: database_retry_timeout
  kind: integer
  value: 5
- name: project_readonly
  kind: boolean
  value: false
  env_specific: true
- name: hub_api_root
- name: hub_url
  value: https://hub.meltano.com
- name: hub_url_auth
- name: elt.buffer_size
  kind: integer
  value: 10485760 # 10 MiB
- name: python

# State backend settings
- name: state_backend.uri
  value: systemdb
  env_specific: true

## Filesystem state backends
- name: state_backend.lock_timeout_seconds
  value: 10
  kind: integer
  env_specific: true
- name: state_backend.lock_retry_seconds
  value: 1
  kind: integer
  env_specific: true

## Azure state backend
- name: state_backend.azure.connection_string
  sensitive: true
  env_specific: true
- name: state_backend.azure.storage_account_url
  env_specific: true

## AWS S3 state backend
- name: state_backend.s3.aws_access_key_id
  sensitive: true
  env_specific: true
- name: state_backend.s3.aws_secret_access_key
  sensitive: true
  env_specific: true
- name: state_backend.s3.endpoint_url
  env_specific: true

## GCS state backend
- name: state_backend.gcs.application_credentials
  sensitive: true
  env_specific: true

# CLI
- name: cli.log_level
  kind: options
  options:
  - label: Debug
    value: debug
  - label: Info
    value: info
  - label: Warning
    value: warning
  - label: Error
    value: error
  - label: Critical
    value: critical
  value: info
  env_specific: true
- name: cli.log_config
  value: logging.yaml

# Snowplow Tracking
- name: snowplow.collector_endpoints
  kind: array
  value: ["https://sp.meltano.com"]

# venv
- name: venv.backend
  value: virtualenv
  kind: options
  options:
  - label: virtualenv
    value: virtualenv
  - label: uv
    value: uv

# Feature Flags
# Global "experimental" flag.
- name: experimental
  kind: boolean
  value: False
# Control whether references to undefined env vars causes hard fail.
- name: ff.strict_env_var_mode
  kind: boolean
  value: False
# Whether invoke, and run operations if a plugin is not custom or it is not locked.
# Deprecated since 3.0
- name: ff.plugin_locks_required
  kind: boolean
  value: false

# If you add/update a setting that affects `meltano.yml`, update `meltano.schema.json` too!
